package leetcode.three_consecutive_odds;

import java.util.ArrayList;

public class Solution {
    public boolean threeConsecutiveOdds(int[] arr) {
        //因为int为基本类型。不能运用到泛型当中，所以使用int对应的包装类类型Integer替代
        //先从数组 转成 顺序表（ArrayList<Integer>）

        ArrayList<Integer> list=new ArrayList<>();
        for(int element:arr) {
            //因为依次遍历数组，所以经过顺序表的尾插后，元素的顺序不改变
            list.add(element);
        }

        //使用连续下标：i，j,k进行判断
        //i的取值范围：[0,size()-3]
        //j的取值范围：[1,size()-2]
        //k的取值范围：[2,size()-1]

        int i=0;
        int j=1;
        int k=2;

        while (k<list.size()) {
            int elementI=list.get(i);
            int elementJ=list.get(j);
            int elementK=list.get(k);

            if(isOdd(elementI) && isOdd(elementJ) && isOdd(elementK)) {
                return true;
            }

            i++;
            k++;
            j++;
        }

        return false;
    }

    private boolean isOdd(int element) {
        return element%2!=0;
    }

    public static void main(String[] args) {
        Solution solution=new Solution();
        int[] array={1,3,5,7,9};
        solution.threeConsecutiveOdds(array);
    }
}
